//  [10/8/2013 OMEGA] created

#ifndef _DUELGUIEWORKBENCHACTIONS_H_
#define _DUELGUIEWORKBENCHACTIONS_H_

#include <QAction>
#include <QActionGroup>
#include "DuelGUIECommon.h"


class DGUIEActionManager : public QObject
{
	Q_OBJECT
public:
	DGUIEActionManager(DGUIEWorkbench* workbench);

	// use state machine to manage enable/diable action states.
	enum ActionState
	{

	};


	void			addToggleWindowAction(QAction* act);

protected:

	DGUIEWorkbench*	mWorkbench;

	QActionGroup*	mFileActions;
	QActionGroup*	mEditActions;
	QActionGroup*	mProjectActions;
	QActionGroup*	mResentFileActions;

	QAction*		mNewProjAct;
	QAction*		mOpenProjAct;
	QAction*		mSaveProjAct;
	QAction*		mCloseProjAct;
	QAction*		mQuitAct;

	QAction*		mEditProjAct;

	//////////////////////////////////////////////////////////////////////////
	// toggle window on/off action groups.
	QActionGroup*	mToggleWindowActions;
};


#endif